[INFO] fetching crate libprefetch 0.1.1...
[INFO] testing libprefetch-0.1.1 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065-1
[INFO] extracting crate libprefetch 0.1.1 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate libprefetch 0.1.1
[INFO] finished tweaking crates.io crate libprefetch 0.1.1
[INFO] tweaked toml for crates.io crate libprefetch 0.1.1 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate libprefetch 0.1.1 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7fc4f5f894ce0eafd4eade7cd69bffa1d8667a9dd8b90a657bea154d9e628c24
[INFO] running `Command { std: "docker" "start" "-a" "7fc4f5f894ce0eafd4eade7cd69bffa1d8667a9dd8b90a657bea154d9e628c24", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7fc4f5f894ce0eafd4eade7cd69bffa1d8667a9dd8b90a657bea154d9e628c24", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7fc4f5f894ce0eafd4eade7cd69bffa1d8667a9dd8b90a657bea154d9e628c24", kill_on_drop: false }`
[INFO] [stdout] 7fc4f5f894ce0eafd4eade7cd69bffa1d8667a9dd8b90a657bea154d9e628c24
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 52e020bbf53d6e30f6379ba98e1aea3302d4de4720f4959f5f0d29a990e4426e
[INFO] running `Command { std: "docker" "start" "-a" "52e020bbf53d6e30f6379ba98e1aea3302d4de4720f4959f5f0d29a990e4426e", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]    Compiling libprefetch v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/prefetch.rs:96:15
[INFO] [stdout]    |
[INFO] [stdout] 96 |   parser: Box<super::parser::Parser>,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 96 |   parser: Box<dyn super::parser::Parser>,
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |   fn cause(&self) -> Option<&std::error::Error> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |   fn cause(&self) -> Option<&dyn std::error::Error> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/prefetch.rs:39:44
[INFO] [stdout]    |
[INFO] [stdout] 39 |       -> super::Result<(FormatVersion, Box<super::parser::Parser>)> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |       -> super::Result<(FormatVersion, Box<dyn super::parser::Parser>)> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/header.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 |   Box<super::parser::Parser>)> {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 29 |   Box<dyn super::parser::Parser>)> {
[INFO] [stdout]    |       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:44:34
[INFO] [stdout]    |
[INFO] [stdout] 44 |       Error::IOError(ref e) => e.description(),
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:60:26
[INFO] [stdout]    |
[INFO] [stdout] 60 |     write!(f, "{}", self.description())
[INFO] [stdout]    |                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/header.rs:31:44
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let result: super::Result<(Header, Box<super::parser::Parser>)>;
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let result: super::Result<(Header, Box<dyn super::parser::Parser>)>;
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parser` is never read
[INFO] [stdout]   --> src/prefetch.rs:96:3
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub struct Prefetch {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 95 |   header: super::header::Header,
[INFO] [stdout] 96 |   parser: Box<super::parser::Parser>,
[INFO] [stdout]    |   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:147:18
[INFO] [stdout]     |
[INFO] [stdout] 147 |   pub fn metrics(&self)
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here
[INFO] [stdout] 148 |       -> super::Result<super::iterator::MetricIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 148 |       -> super::Result<super::iterator::MetricIterator<'_>> {
[INFO] [stdout]     |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:168:16
[INFO] [stdout]     |
[INFO] [stdout] 168 |   pub fn trace(&self)
[INFO] [stdout]     |                ^^^^^ the lifetime is elided here
[INFO] [stdout] 169 |       -> super::Result<super::iterator::TraceIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 169 |       -> super::Result<super::iterator::TraceIterator<'_>> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:197:18
[INFO] [stdout]     |
[INFO] [stdout] 197 |   pub fn volumes(&self)
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here
[INFO] [stdout] 198 |       -> super::Result<super::iterator::VolumeIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 198 |       -> super::Result<super::iterator::VolumeIterator<'_>> {
[INFO] [stdout]     |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:30:24
[INFO] [stdout]    |
[INFO] [stdout] 29 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]    |                                     -- the lifetime is named here
[INFO] [stdout] 30 |       -> super::Result<MetricIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]    |
[INFO] [stdout] 30 |       -> super::Result<MetricIterator<'p>> {
[INFO] [stdout]    |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 71 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]    |                                     -- the lifetime is named here
[INFO] [stdout] 72 |       -> super::Result<TraceIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]    |
[INFO] [stdout] 72 |       -> super::Result<TraceIterator<'p>> {
[INFO] [stdout]    |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/iterator.rs:113:24
[INFO] [stdout]     |
[INFO] [stdout] 112 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]     |                                     -- the lifetime is named here
[INFO] [stdout] 113 |       -> super::Result<VolumeIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]     |
[INFO] [stdout] 113 |       -> super::Result<VolumeIterator<'p>> {
[INFO] [stdout]     |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/iterator.rs:155:24
[INFO] [stdout]     |
[INFO] [stdout] 154 |   pub(crate) fn new(volume_entry: &'ve super::volume::VolumeEntry)
[INFO] [stdout]     |                                    --- the lifetime is named here
[INFO] [stdout] 155 |       -> super::Result<DirectoryIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'ve`
[INFO] [stdout]     |
[INFO] [stdout] 155 |       -> super::Result<DirectoryIterator<'ve>> {
[INFO] [stdout]     |                                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/volume.rs:61:22
[INFO] [stdout]    |
[INFO] [stdout] 61 |   pub fn directories(&self)
[INFO] [stdout]    |                      ^^^^^ the lifetime is elided here
[INFO] [stdout] 62 |       -> super::Result<super::iterator::DirectoryIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |       -> super::Result<super::iterator::DirectoryIterator<'_>> {
[INFO] [stdout]    |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.37s
[INFO] running `Command { std: "docker" "inspect" "52e020bbf53d6e30f6379ba98e1aea3302d4de4720f4959f5f0d29a990e4426e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "52e020bbf53d6e30f6379ba98e1aea3302d4de4720f4959f5f0d29a990e4426e", kill_on_drop: false }`
[INFO] [stdout] 52e020bbf53d6e30f6379ba98e1aea3302d4de4720f4959f5f0d29a990e4426e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0845487459aa64f939f3ff5e792c7b488297eb87d96e5075f6f6c297eb91e976
[INFO] running `Command { std: "docker" "start" "-a" "0845487459aa64f939f3ff5e792c7b488297eb87d96e5075f6f6c297eb91e976", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/prefetch.rs:96:15
[INFO] [stdout]    |
[INFO] [stdout] 96 |   parser: Box<super::parser::Parser>,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 96 |   parser: Box<dyn super::parser::Parser>,
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |   fn cause(&self) -> Option<&std::error::Error> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |   fn cause(&self) -> Option<&dyn std::error::Error> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/prefetch.rs:39:44
[INFO] [stdout]    |
[INFO] [stdout] 39 |       -> super::Result<(FormatVersion, Box<super::parser::Parser>)> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |       -> super::Result<(FormatVersion, Box<dyn super::parser::Parser>)> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/header.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 |   Box<super::parser::Parser>)> {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 29 |   Box<dyn super::parser::Parser>)> {
[INFO] [stdout]    |       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:44:34
[INFO] [stdout]    |
[INFO] [stdout] 44 |       Error::IOError(ref e) => e.description(),
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:60:26
[INFO] [stdout]    |
[INFO] [stdout] 60 |     write!(f, "{}", self.description())
[INFO] [stdout]    |                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/header.rs:31:44
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let result: super::Result<(Header, Box<super::parser::Parser>)>;
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let result: super::Result<(Header, Box<dyn super::parser::Parser>)>;
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parser` is never read
[INFO] [stdout]   --> src/prefetch.rs:96:3
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub struct Prefetch {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 95 |   header: super::header::Header,
[INFO] [stdout] 96 |   parser: Box<super::parser::Parser>,
[INFO] [stdout]    |   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:147:18
[INFO] [stdout]     |
[INFO] [stdout] 147 |   pub fn metrics(&self)
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here
[INFO] [stdout] 148 |       -> super::Result<super::iterator::MetricIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 148 |       -> super::Result<super::iterator::MetricIterator<'_>> {
[INFO] [stdout]     |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:168:16
[INFO] [stdout]     |
[INFO] [stdout] 168 |   pub fn trace(&self)
[INFO] [stdout]     |                ^^^^^ the lifetime is elided here
[INFO] [stdout] 169 |       -> super::Result<super::iterator::TraceIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 169 |       -> super::Result<super::iterator::TraceIterator<'_>> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:197:18
[INFO] [stdout]     |
[INFO] [stdout] 197 |   pub fn volumes(&self)
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here
[INFO] [stdout] 198 |       -> super::Result<super::iterator::VolumeIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 198 |       -> super::Result<super::iterator::VolumeIterator<'_>> {
[INFO] [stdout]     |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:30:24
[INFO] [stdout]    |
[INFO] [stdout] 29 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]    |                                     -- the lifetime is named here
[INFO] [stdout] 30 |       -> super::Result<MetricIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]    |
[INFO] [stdout] 30 |       -> super::Result<MetricIterator<'p>> {
[INFO] [stdout]    |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 71 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]    |                                     -- the lifetime is named here
[INFO] [stdout] 72 |       -> super::Result<TraceIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]    |
[INFO] [stdout] 72 |       -> super::Result<TraceIterator<'p>> {
[INFO] [stdout]    |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/iterator.rs:113:24
[INFO] [stdout]     |
[INFO] [stdout] 112 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]     |                                     -- the lifetime is named here
[INFO] [stdout] 113 |       -> super::Result<VolumeIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]     |
[INFO] [stdout] 113 |       -> super::Result<VolumeIterator<'p>> {
[INFO] [stdout]     |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/iterator.rs:155:24
[INFO] [stdout]     |
[INFO] [stdout] 154 |   pub(crate) fn new(volume_entry: &'ve super::volume::VolumeEntry)
[INFO] [stdout]     |                                    --- the lifetime is named here
[INFO] [stdout] 155 |       -> super::Result<DirectoryIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'ve`
[INFO] [stdout]     |
[INFO] [stdout] 155 |       -> super::Result<DirectoryIterator<'ve>> {
[INFO] [stdout]     |                                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/volume.rs:61:22
[INFO] [stdout]    |
[INFO] [stdout] 61 |   pub fn directories(&self)
[INFO] [stdout]    |                      ^^^^^ the lifetime is elided here
[INFO] [stdout] 62 |       -> super::Result<super::iterator::DirectoryIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |       -> super::Result<super::iterator::DirectoryIterator<'_>> {
[INFO] [stdout]    |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling libprefetch v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/prefetch.rs:96:15
[INFO] [stdout]    |
[INFO] [stdout] 96 |   parser: Box<super::parser::Parser>,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 96 |   parser: Box<dyn super::parser::Parser>,
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |   fn cause(&self) -> Option<&std::error::Error> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |   fn cause(&self) -> Option<&dyn std::error::Error> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/prefetch.rs:39:44
[INFO] [stdout]    |
[INFO] [stdout] 39 |       -> super::Result<(FormatVersion, Box<super::parser::Parser>)> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |       -> super::Result<(FormatVersion, Box<dyn super::parser::Parser>)> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/header.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 |   Box<super::parser::Parser>)> {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 29 |   Box<dyn super::parser::Parser>)> {
[INFO] [stdout]    |       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:44:34
[INFO] [stdout]    |
[INFO] [stdout] 44 |       Error::IOError(ref e) => e.description(),
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:60:26
[INFO] [stdout]    |
[INFO] [stdout] 60 |     write!(f, "{}", self.description())
[INFO] [stdout]    |                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/header.rs:31:44
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let result: super::Result<(Header, Box<super::parser::Parser>)>;
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let result: super::Result<(Header, Box<dyn super::parser::Parser>)>;
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parser` is never read
[INFO] [stdout]   --> src/prefetch.rs:96:3
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub struct Prefetch {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 95 |   header: super::header::Header,
[INFO] [stdout] 96 |   parser: Box<super::parser::Parser>,
[INFO] [stdout]    |   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:147:18
[INFO] [stdout]     |
[INFO] [stdout] 147 |   pub fn metrics(&self)
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here
[INFO] [stdout] 148 |       -> super::Result<super::iterator::MetricIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 148 |       -> super::Result<super::iterator::MetricIterator<'_>> {
[INFO] [stdout]     |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:168:16
[INFO] [stdout]     |
[INFO] [stdout] 168 |   pub fn trace(&self)
[INFO] [stdout]     |                ^^^^^ the lifetime is elided here
[INFO] [stdout] 169 |       -> super::Result<super::iterator::TraceIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 169 |       -> super::Result<super::iterator::TraceIterator<'_>> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/prefetch.rs:197:18
[INFO] [stdout]     |
[INFO] [stdout] 197 |   pub fn volumes(&self)
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here
[INFO] [stdout] 198 |       -> super::Result<super::iterator::VolumeIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 198 |       -> super::Result<super::iterator::VolumeIterator<'_>> {
[INFO] [stdout]     |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:30:24
[INFO] [stdout]    |
[INFO] [stdout] 29 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]    |                                     -- the lifetime is named here
[INFO] [stdout] 30 |       -> super::Result<MetricIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]    |
[INFO] [stdout] 30 |       -> super::Result<MetricIterator<'p>> {
[INFO] [stdout]    |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 71 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]    |                                     -- the lifetime is named here
[INFO] [stdout] 72 |       -> super::Result<TraceIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]    |
[INFO] [stdout] 72 |       -> super::Result<TraceIterator<'p>> {
[INFO] [stdout]    |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/iterator.rs:113:24
[INFO] [stdout]     |
[INFO] [stdout] 112 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stdout]     |                                     -- the lifetime is named here
[INFO] [stdout] 113 |       -> super::Result<VolumeIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'p`
[INFO] [stdout]     |
[INFO] [stdout] 113 |       -> super::Result<VolumeIterator<'p>> {
[INFO] [stdout]     |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/iterator.rs:155:24
[INFO] [stdout]     |
[INFO] [stdout] 154 |   pub(crate) fn new(volume_entry: &'ve super::volume::VolumeEntry)
[INFO] [stdout]     |                                    --- the lifetime is named here
[INFO] [stdout] 155 |       -> super::Result<DirectoryIterator> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'ve`
[INFO] [stdout]     |
[INFO] [stdout] 155 |       -> super::Result<DirectoryIterator<'ve>> {
[INFO] [stdout]     |                                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/volume.rs:61:22
[INFO] [stdout]    |
[INFO] [stdout] 61 |   pub fn directories(&self)
[INFO] [stdout]    |                      ^^^^^ the lifetime is elided here
[INFO] [stdout] 62 |       -> super::Result<super::iterator::DirectoryIterator> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |       -> super::Result<super::iterator::DirectoryIterator<'_>> {
[INFO] [stdout]    |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.78s
[INFO] running `Command { std: "docker" "inspect" "0845487459aa64f939f3ff5e792c7b488297eb87d96e5075f6f6c297eb91e976", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0845487459aa64f939f3ff5e792c7b488297eb87d96e5075f6f6c297eb91e976", kill_on_drop: false }`
[INFO] [stdout] 0845487459aa64f939f3ff5e792c7b488297eb87d96e5075f6f6c297eb91e976
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b4e6b942a1d705761b2153af26901a2644ce09602c95aab9003f9ecc9313d972
[INFO] running `Command { std: "docker" "start" "-a" "b4e6b942a1d705761b2153af26901a2644ce09602c95aab9003f9ecc9313d972", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/prefetch.rs:96:15
[INFO] [stderr]    |
[INFO] [stderr] 96 |   parser: Box<super::parser::Parser>,
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 96 |   parser: Box<dyn super::parser::Parser>,
[INFO] [stderr]    |               +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/error.rs:49:30
[INFO] [stderr]    |
[INFO] [stderr] 49 |   fn cause(&self) -> Option<&std::error::Error> {
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 49 |   fn cause(&self) -> Option<&dyn std::error::Error> {
[INFO] [stderr]    |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/prefetch.rs:39:44
[INFO] [stderr]    |
[INFO] [stderr] 39 |       -> super::Result<(FormatVersion, Box<super::parser::Parser>)> {
[INFO] [stderr]    |                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 39 |       -> super::Result<(FormatVersion, Box<dyn super::parser::Parser>)> {
[INFO] [stderr]    |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/header.rs:29:7
[INFO] [stderr]    |
[INFO] [stderr] 29 |   Box<super::parser::Parser>)> {
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 29 |   Box<dyn super::parser::Parser>)> {
[INFO] [stderr]    |       +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/error.rs:44:34
[INFO] [stderr]    |
[INFO] [stderr] 44 |       Error::IOError(ref e) => e.description(),
[INFO] [stderr]    |                                  ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/error.rs:60:26
[INFO] [stderr]    |
[INFO] [stderr] 60 |     write!(f, "{}", self.description())
[INFO] [stderr]    |                          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/header.rs:31:44
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let result: super::Result<(Header, Box<super::parser::Parser>)>;
[INFO] [stderr]    |                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let result: super::Result<(Header, Box<dyn super::parser::Parser>)>;
[INFO] [stderr]    |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: field `parser` is never read
[INFO] [stderr]   --> src/prefetch.rs:96:3
[INFO] [stderr]    |
[INFO] [stderr] 94 | pub struct Prefetch {
[INFO] [stderr]    |            -------- field in this struct
[INFO] [stderr] 95 |   header: super::header::Header,
[INFO] [stderr] 96 |   parser: Box<super::parser::Parser>,
[INFO] [stderr]    |   ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/prefetch.rs:147:18
[INFO] [stderr]     |
[INFO] [stderr] 147 |   pub fn metrics(&self)
[INFO] [stderr]     |                  ^^^^^ the lifetime is elided here
[INFO] [stderr] 148 |       -> super::Result<super::iterator::MetricIterator> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 148 |       -> super::Result<super::iterator::MetricIterator<'_>> {
[INFO] [stderr]     |                                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/prefetch.rs:168:16
[INFO] [stderr]     |
[INFO] [stderr] 168 |   pub fn trace(&self)
[INFO] [stderr]     |                ^^^^^ the lifetime is elided here
[INFO] [stderr] 169 |       -> super::Result<super::iterator::TraceIterator> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 169 |       -> super::Result<super::iterator::TraceIterator<'_>> {
[INFO] [stderr]     |                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/prefetch.rs:197:18
[INFO] [stderr]     |
[INFO] [stderr] 197 |   pub fn volumes(&self)
[INFO] [stderr]     |                  ^^^^^ the lifetime is elided here
[INFO] [stderr] 198 |       -> super::Result<super::iterator::VolumeIterator> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 198 |       -> super::Result<super::iterator::VolumeIterator<'_>> {
[INFO] [stderr]     |                                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/iterator.rs:30:24
[INFO] [stderr]    |
[INFO] [stderr] 29 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stderr]    |                                     -- the lifetime is named here
[INFO] [stderr] 30 |       -> super::Result<MetricIterator> {
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'p`
[INFO] [stderr]    |
[INFO] [stderr] 30 |       -> super::Result<MetricIterator<'p>> {
[INFO] [stderr]    |                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/iterator.rs:72:24
[INFO] [stderr]    |
[INFO] [stderr] 71 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stderr]    |                                     -- the lifetime is named here
[INFO] [stderr] 72 |       -> super::Result<TraceIterator> {
[INFO] [stderr]    |                        ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'p`
[INFO] [stderr]    |
[INFO] [stderr] 72 |       -> super::Result<TraceIterator<'p>> {
[INFO] [stderr]    |                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/iterator.rs:113:24
[INFO] [stderr]     |
[INFO] [stderr] 112 |   pub(crate) fn new(parser_result: &'p super::parser::ParserResult)
[INFO] [stderr]     |                                     -- the lifetime is named here
[INFO] [stderr] 113 |       -> super::Result<VolumeIterator> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'p`
[INFO] [stderr]     |
[INFO] [stderr] 113 |       -> super::Result<VolumeIterator<'p>> {
[INFO] [stderr]     |                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/iterator.rs:155:24
[INFO] [stderr]     |
[INFO] [stderr] 154 |   pub(crate) fn new(volume_entry: &'ve super::volume::VolumeEntry)
[INFO] [stderr]     |                                    --- the lifetime is named here
[INFO] [stderr] 155 |       -> super::Result<DirectoryIterator> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'ve`
[INFO] [stderr]     |
[INFO] [stderr] 155 |       -> super::Result<DirectoryIterator<'ve>> {
[INFO] [stderr]     |                                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/volume.rs:61:22
[INFO] [stderr]    |
[INFO] [stderr] 61 |   pub fn directories(&self)
[INFO] [stderr]    |                      ^^^^^ the lifetime is elided here
[INFO] [stderr] 62 |       -> super::Result<super::iterator::DirectoryIterator> {
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 62 |       -> super::Result<super::iterator::DirectoryIterator<'_>> {
[INFO] [stderr]    |                                                          ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `libprefetch` (lib) generated 16 warnings (run `cargo fix --lib -p libprefetch` to apply 13 suggestions)
[INFO] [stderr] warning: `libprefetch` (lib test) generated 16 warnings (16 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/libprefetch-72f196b65e31da15)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test tests::metrics ... ok
[INFO] [stdout] test tests::readme ... ok
[INFO] [stdout] test tests::volumes ... ok
[INFO] [stdout] test tests::volumes_directories ... ok
[INFO] [stdout] test tests::header ... ok
[INFO] [stdout] test tests::trace ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests libprefetch
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test src/prefetch.rs - prefetch::Prefetch::from_path (line 235) ... ok
[INFO] [stdout] test src/prefetch.rs - prefetch::Prefetch::metrics (line 136) ... ok
[INFO] [stdout] test src/prefetch.rs - prefetch::Prefetch::trace (line 157) ... ok
[INFO] [stdout] test src/prefetch.rs - prefetch::Prefetch::volumes (line 177) ... ok
[INFO] [stdout] test src/lib.rs - (line 50) ... ok
[INFO] [stdout] test src/prefetch.rs - prefetch::Prefetch::new (line 207) ... ok
[INFO] [stdout] test src/prefetch.rs - prefetch::Prefetch (line 79) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.70s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b4e6b942a1d705761b2153af26901a2644ce09602c95aab9003f9ecc9313d972", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b4e6b942a1d705761b2153af26901a2644ce09602c95aab9003f9ecc9313d972", kill_on_drop: false }`
[INFO] [stdout] b4e6b942a1d705761b2153af26901a2644ce09602c95aab9003f9ecc9313d972
